package top.ajunnihao.core.mapper;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import top.ajunnihao.core.entity.UserAbility;

/**
 * TODO 用户权限持久层接口
 *
 * @author AJun
 * @version 1.0.0
 * @date 2020/5/24
 */
@Repository
public interface UserAbilityMapper {

    /**
     * 根据用户 id 查找用户权限信息
     *
     * @param userId 用户 id
     * @return 用户权限信息
     */
    UserAbility findUserAbilityByUserId(@Param("userId") Integer userId);

    /**
     * 保存用户权限信息
     *
     * @param userAbility 用户权限
     * @return 更新行数
     */
    int saveUserAbility(UserAbility userAbility);

    /**
     * 更改用户权限信息
     *
     * @param userAbility 用户权限
     * @return 更新行数
     */
    int updateUserAbility(UserAbility userAbility);

    /**
     * 更改用户权限信息: 恢复权利
     *
     * @return 更新行数
     */
    int updateUserAbilityToMax();

}
